package com.todo.strategy.card.iface.backend;


import com.todo.common.common.entity.response.BizPageResponse;
import com.todo.common.common.entity.response.BizResponse;
import com.todo.strategy.card.iface.backend.request.*;
import com.todo.strategy.card.iface.backend.response.TravelCardDetailResp;

/**
 * @author zhangwenxiang
 * @date 2024/3/5 19:18
 * @description
 */
public interface TravelCardBackendIface {
    /**
     * 根据id查询旅游卡详情
     *
     * @param queryTravelCardByIdReq
     * @return
     */
    BizResponse<TravelCardDetailResp> queryTravelCardById(QueryTravelCardByIdReq queryTravelCardByIdReq);

    /**
     * 根据条件查询旅游卡列表
     *
     * @param queryTravelCardByConditionReq
     * @return
     */
    BizPageResponse<TravelCardDetailResp> queryTravelCardByCondition(QueryTravelCardByConditionReq queryTravelCardByConditionReq);

    /**
     * 根据id更新旅游卡详情
     *
     * @param updateTravelCardByIdReq
     * @return
     */
    BizResponse<Boolean> updateTravelCardById(UpdateTravelCardByIdReq updateTravelCardByIdReq);

    /**
     * 新增旅游卡
     *
     * @param insertTravelCardReq
     * @return
     */
    BizResponse<Boolean> insertTravelCard(InsertTravelCardReq insertTravelCardReq);

    /**
     * 启禁用旅游卡
     *
     * @param enableTravelCardReq
     * @return
     */
    BizResponse<Boolean> enableTravelCard(EnableTravelCardReq enableTravelCardReq);
}
